package List;

import java.util.ArrayList;
import java.util.List;

public class 杨辉三角 {
    public List<List<Integer>> generate(int numRows) {
        if (numRows==0) {
            return null;
        }

        ArrayList<List<Integer>> res  = new ArrayList<>();

        //处理 第一行
        List<Integer> list = new ArrayList<>();
        list.add(1);
        res.add(list);

        //处理 第二行及以后
        for (int i = 1; i <numRows; i++) {
            //当前行
            List<Integer> curRow = new ArrayList<>();
            curRow.add(1);
            //前一行
            List<Integer> preRow = res.get(i-1);

            for (int j=1;j<i;j++) {
                int val=preRow.get(j)+preRow.get(j-1);
                curRow.add(val);
            }
            curRow.add(1);

            res.add(curRow);
        }
        return res;
    }
}
